<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Voto-E: Administracion de listas</title>
</head>
<body>
<!-- fichero de configuracion -->
<?php require('tools.php'); ?> 
<?php check_https(); ?>
<!-- COMIENZO DEL TEXTO -->
<?php
$conn=db_Open("Error en conexi�n con la DataBase");
// autentificamos ( por si las moscas alguno llama directamente al cgi )
$res=certify_user($conn,$evote_email,$evote_userid,$evote_passwd,"Error en autentificaci�n del administrador");

if ($operacion=="add_list") {
	grant_access($conn,$res,4,"Insuficiente nivel de privilegio");
	printf("<h1>Registro de Listas de usuarios </h1>\n");
	// primero verificamos integridad de datos
        $count=0;
        $field="Faltan por rellenar los campos: ";
        if($nombre=="") { $count++; $field=sprintf("%s nombre,",$field); }
        if($descripcion==""){$count++;$field=sprintf("%s descripci�n,",$field);}
        if($email=="") { $count++; $field=sprintf("%s email,",$field); }
        if ( $count > 0 ) {
                echo "<h3>Error en Alta de listas</h3>\n";
                echo $field;
		cierra_html();
                exit ;
        } 
	printf ("<form name=accept_new_list action=\"%s/admin_listas.php\" method=\"post\">\n",get_url("SECUREURL"));
	printf("<table>\n");
	printf("<tr><th>Nombre</th><td> %s </td></tr>\n",$nombre);
	printf("<tr><th>Descripci�n</th><td> %s </td></tr>\n",$descripcion);
	printf("<tr><th>E-Mail</th><td> %s </td></tr>\n",$email);
	printf("</table>\n");
	
	printf ("<input type=hidden name=\"nombre\" value=\"%s\">\n",$nombre);
	printf ("<input type=hidden name=\"descripcion\" value=\"%s\">\n",$descripcion);
	printf ("<input type=hidden name=\"email\" value=\"%s\">\n",$email);
	printf ("<input type=radio name=\"yesno\" value=1 checked>Inscribir &nbsp;\n");
	printf ("<input type=radio name=\"yesno\" value=0>Rechazar\n");
	printf ("<input type=submit value=\"Procesar petici�n\">\n");
	printf ("<input type=hidden name=\"id_lista\" value=%s>\n",$id_lista);
	printf ("<input type=hidden name=\"operacion\" value=\"process_add_list\">\n");
}

if ($operacion=="edit_list") {
	printf("<h1>Modificaci�n de Datos de lista</h1>\n");
	grant_access($conn,$res,5,"Insuficiente nivel de privilegio");
	printf ("<form name=edit_list action=\"%s/admin_listas.php\" method=\"post\">\n",get_url("SECUREURL"));
	// presentamos formulario de tabla de datos de la lista
	$lista=lookup_list($conn,$id_lista);
	printf("<table>\n");
	printf("<tr><th>ID Lista</th><td>%s</td></tr>\n",$lista->id_lista);
	printf("<tr><th>Nombre</th><td> <input type=text name=\"nombre\" size=20 maxlength=20 value=\"%s\"></td></tr>\n",$lista->nombre);
	printf("<tr><th>Descripci�n</th><td> <input type=text name=\"descripcion\" size=60 maxlength=60 value=\"%s\"></td></tr>\n",$lista->descripcion);
	printf("<tr><th>E-Mail</th><td> <input type=text name=\"email\" size=40 maxlength=40 value=\"%s\"></td></tr>\n",$lista->email);
	printf("</table>\n");
	printf ("<input type=radio name=\"yesno\" value=1 checked>Modificar &nbsp;\n");
	printf ("<input type=radio name=\"yesno\" value=0>Mantener\n");
	printf ("<input type=submit value=\"Procesar petici�n\">\n");
	printf ("<input type=hidden name=\"id_lista\" value=%s>\n",$id_lista);
	printf ("<input type=hidden name=\"operacion\" value=\"process_edit_list\">\n");
}

if ($operacion=="del_list") {
	printf("<h1>Eliminaci�n de Lista de usuarios</h1>\n");
	grant_access($conn,$res,5,"Insuficiente nivel de privilegio");
	list_lista_data($conn,$id_lista);
	// formulario de aceptaci�n de datos
	printf ("<form name=delete_list action=\"%s/admin_listas.php\" method=\"post\">\n",get_url("SECUREURL"));
	printf ("<input type=radio name=\"yesno\" value=1 checked>Borrar &nbsp;\n");
	printf ("<input type=radio name=\"yesno\" value=0>Mantener\n");
	printf ("<input type=submit value=\"Procesar petici�n\">\n");
	printf ("<input type=hidden name=\"id_lista\" value=%s>\n",$id_lista);
	printf ("<input type=hidden name=\"operacion\" value=\"process_del_list\">\n");
}

if ($operacion=="edit_userlist") {
	printf("<h1>Asignaci�n de usuarios a listas del censo</h1>\n");
	grant_access($conn,$res,5,"Insuficiente nivel de privilegio");
	printf("<h3>Datos de la lista</h3>\n");
	list_lista_data($conn,$id_lista);
	// sacamos listado de usuarios indicando si pertenecen o no a la lista
	$comm=sprintf("SELECT DISTINCT userid,apellidos,nombre,email,id_lista,pertenece(userid,id_lista) AS inscrito FROM usuarios,user_acl WHERE id_lista=%s;",$id_lista);
	// printf("%s\n",$comm);
	$res=sqlquery($conn,$comm,"Error en listado de usuarios");
	if ( ($count=db_numrows($res)) == 0 ) {
                echo "No hay usuarios registrados en la base de datos";
                cierra_html();
                exit;
        }
	printf("<h3>Listado de usuarios de la base de datos</h3>\n<p>Marca aquellos usuarios que quieras que pertenezcan a la lista, y pulsa &lt;Aceptar&gt;</p>\n");
	printf ("<form name=delete_list action=\"%s/admin_listas.php\" method=\"post\">\n",get_url("SECUREURL"));
	printf("<table><tr><th>Inscrito</th><th>UserID</th><th>Apellidos , Nombre</th><th>E-Mail</th></tr>\n");
	for ( $num=0; $num<$count; $num++ ) {
                $data=db_fetch_object($res,$num);
		if ($data->userid <= 1) continue; // skip root and nobody
                if ($data->inscrito == 't' ) $set="checked"; else $set="";
                printf("<tr><td><input type=checkbox name=\"usuario[%s]\" value=1 %s></td><th>%s</th><td>%s, %s</td><td>%s</td></tr>\n",$data->userid,$set,$data->userid,$data->apellidos,$data->nombre,$data->email);
        }
        printf("</table>\n");	
	printf ("<input type=reset value=\"Restaurar estado\">\n");
	printf ("<input type=submit value=\"Activar cambios\">\n");
	printf ("<input type=hidden name=\"id_lista\" value=%s>\n",$id_lista);
	printf ("<input type=hidden name=\"operacion\" value=\"process_edit_userlist\">\n");
}

if ($operacion=="process_add_list") {
	printf("<h1>Inscripci�n de Lista de Usuarios</h1>\n");
	grant_access($conn,$res,4,"Insuficiente nivel de privilegio");
	if ( $yesno==0 ) printf ("Operaci�n cancelada");
	else {
		$comm=sprintf("INSERT INTO listas(nombre,descripcion,email) VALUES ('%s','%s','%s');",$nombre,$descripcion,$email);
		sqlquery($conn,$comm,"Error al insertar nueva lista");
		$data=lookup_list_by_email($conn,$email);
		list_lista_data($conn,$data->id_lista);
		printf ("<p>Lista a�adido</p>");
		// enviamos notificaci�n por correo
	}
}

if ($operacion=="process_edit_list") {
	printf("<h1>Modificaci�n de Datos de lista</h1>\n");
	grant_access($conn,$res,5,"Insuficiente nivel de privilegio");
	$admin=lookup_list($conn,$id_lista);
	if ( $yesno==0 ) printf ("Operaci�n cancelada");
	else {
		$comm=sprintf("UPDATE listas SET nombre='%s' , descripcion='%s' , email='%s' WHERE id_lista=%s;",$nombre,$descripcion,$email,$id_lista);
		sqlquery($conn,$comm,"Error en actualizaci�n de datos de lista");
		list_lista_data($conn,$id_lista);
		printf ("<p>Datos de lista actualizados</p>");
		// enviamos notificaci�n por correo
	}
}

if ($operacion=="process_del_list") {
	printf("<h1>Eliminaci�n de Listas de usuarios</h1>\n");
	grant_access($conn,$res,5,"Insuficiente nivel de privilegio");
	if ( $yesno==0 ) printf ("Operaci�n cancelada");
	else {
		// cogemos los datos antes de borrarlos...
		$lista=lookup_list($conn,$id_lista);
		list_lista_data($conn,$id_lista);
		$com=sprintf("DELETE FROM listas WHERE id_lista=%s;",$id_lista);
		sqlquery($conn,$com,"Error al eliminar lista de la database");
		printf ("<p>Lista eliminada de la base de datos</p>");
		// enviamos notificaci�n por correo
	}
}

if ($operacion=="process_edit_userlist") {
	printf("<h1>Actualizaci�n de Lista de Usuarios</h1>\n");
	grant_access($conn,$res,5,"Insuficiente nivel de privilegio");
	list_lista_data($conn,$id_lista);
	update_userlist($conn,$id_lista,$usuario);
	printf("<p>Lista actualizada</p>\n");
	// enviamos notificaci�n por correo
}


// marranada para pasar datos de un form al siguiente... lo siento :(
printf ("<input type=hidden name=\"evote_email\" value=\"%s\">\n",$evote_email);
printf ("<input type=hidden name=\"evote_userid\" value=\"%s\">\n",$evote_userid);
printf ("<input type=hidden name=\"evote_passwd\" value=\"%s\">\n",$evote_passwd);
printf("</form>\n");
db_Close($conn);
?>

<!-- FIN DEL TEXTO -->
</body>
</html>
